import socket

FILE_NAME = 'lotus.jpg'

server = socket.socket()
ip_port = ('127.0.0.1', 9999)

server.bind(ip_port)
server.listen(5)

while True:
    print("准备连接客户端")
    # 准备接收
    conn, addr = server.accept()

    print("连接成功，准备接收文件")

    while True:
        # 以追加方式打开byte类型文件
        with open(FILE_NAME, 'ab') as f:
            data = conn.recv(1024)
            print("本次接收长度：%d " % len(data))

            # 判断是否接收结束
            if data == b'EOF':
                break

            # 写入文件
            f.write(data)

        # 接收完成标志
        conn.send('success ACK'.encode())

    print("文件接收完成")

# 关闭连接
server.close()
